package com.iocoder.yudao.module.erp.mapper.warehouse;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.iocoder.yudao.module.erp.controller.admin.stock.vo.warehouse.ErpWarehousePageVO;
import com.iocoder.yudao.module.erp.model.warehouse.ErpWarehouseDO;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface ErpWarehouseMapper extends BaseMapperX<ErpWarehouseDO> {

  default  PageResult<ErpWarehouseDO> selectPage(ErpWarehousePageVO erpWarehousePageVO){
      return selectPage(erpWarehousePageVO,new LambdaQueryWrapperX<ErpWarehouseDO>()
              .likeIfPresent(ErpWarehouseDO::getName,erpWarehousePageVO.getName())
              .eqIfPresent(ErpWarehouseDO::getStatus,erpWarehousePageVO.getStatus())
              .orderByDesc(ErpWarehouseDO::getId)
      );
  }


   default ErpWarehouseDO selectByDefaultStatus(){
       return selectOne(ErpWarehouseDO::getDefaultStatus, true);
   }
}
